package com.retail.shop.service;

import com.retail.core.common.CommonService;
import com.retail.core.entity.result.Result;
import com.retail.shop.entity.vo.RetailShopVo;
import com.retail.shop.entity.request.RetailShopRequest;
import com.retail.shop.entity.vo.ShopTypeStasticVo;

import java.util.List;
import java.util.Map;

/**
* 商户信息 Service
* @author Administrator
*/
public interface RetailShopService extends CommonService<RetailShopRequest,RetailShopVo> {
    RetailShopVo getmodelByPoiIdAndSource(String poiId, Integer shopSource);

    List<RetailShopVo> findOwnerShopByAdminId(String adminId);
    List<RetailShopVo> findOwnerShopByAdminIdAndId(String adminId);

    List<RetailShopVo> myShopList(String adminId, String search);

    RetailShopVo getModelByPoiIdLimmit1( String poiId);


    List<RetailShopVo> toBeBindShop();


    RetailShopVo findShopByShopId(Long shopId);

    RetailShopVo getOwnerShopByOwnerId(Long ownerId);

    List<RetailShopVo> getOfflineAllShopList(String search, String city);

    Result<RetailShopVo> getShopByOwnerId(Long ownerId);

    Result<Integer> insertOrUpdateRetailShop(RetailShopRequest request);

    /**
     * 商户数量统计
     * @param adminId
     * @param startTimestamp
     * @param endTimestamp
     * @return
     */
    List<ShopTypeStasticVo> getShopMonthStastics(Long adminId, String startTimestamp, String endTimestamp);

    /**
     * 更改商户归属
     * @param request
     * @return
     */
    Result<Integer> updateShopBelong(RetailShopRequest request);

    /**
     * 同步抖音门店数据
     * @param page
     * @param size
     * @return
     */
    List<RetailShopRequest> syncTokTikShopList(Integer page, Integer size);

    List<RetailShopVo> findAllShopByShopSource(Integer shopSource);

    Integer allShops();

    Result<Integer> updatecityBelong(RetailShopRequest request);
    
    
}
